library(tidyverse)
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.2 ──
## ✔ ggplot2 3.4.0     ✔ purrr   1.0.1
## ✔ tibble  3.2.1     ✔ dplyr   1.1.2
## ✔ tidyr   1.3.0     ✔ stringr 1.5.0
## ✔ readr   2.1.3     ✔ forcats 0.5.2
## Warning: package 'tibble' was built under R version 4.2.3
## Warning: package 'tidyr' was built under R version 4.2.3
## Warning: package 'purrr' was built under R version 4.2.3
## Warning: package 'dplyr' was built under R version 4.2.3
## Warning: package 'stringr' was built under R version 4.2.3
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()

Questão 1

Peça ao ChatGPT gerar um texto de 4 parágrafos sobre um tema de sua escolha. Copie o texto gerado e salve no objeto “texto” (utilize \n para quebra de linha). Em seguida, faça o que se pede utilizando o pacote stringr.

texto <- "A inteligência artificial (IA) tem sido um dos campos mais empolgantes e inovadores da ciência da computação nas últimas décadas. Ela se concentra no desenvolvimento de sistemas e algoritmos que podem executar tarefas que normalmente requerem inteligência humana. A IA tem uma ampla gama de aplicações, desde assistentes virtuais e carros autônomos até diagnóstico médico avançado e análise de dados em larga escala.
Uma das áreas mais promissoras da IA é o aprendizado de máquina, onde os algoritmos são treinados para reconhecer padrões e fazer previsões com base em dados. Essa capacidade de aprendizado permite que os sistemas de IA melhorem continuamente com o tempo, tornando-os cada vez mais eficientes e precisos em suas tarefas. À medida que a IA se torna mais sofisticada, ela desafia as fronteiras do que é possível realizar com a tecnologia.
No entanto, com o poder da IA também vêm questões éticas e preocupações sobre o seu impacto na sociedade. A automação de empregos, a privacidade dos dados e o viés algorítmico são apenas algumas das questões que precisam ser abordadas à medida que a IA se torna mais difundida. É essencial que desenvolvamos políticas e regulamentações adequadas para garantir que a IA seja usada para o bem da humanidade.
Em resumo, a inteligência artificial é uma área emocionante e em constante evolução que promete transformar a maneira como vivemos e trabalhamos. À medida que continuamos a explorar e desenvolver essa tecnologia, é fundamental equilibrar o potencial de inovação com uma consideração cuidadosa de suas implicações éticas e sociais."

texto <- str_c(texto, collapse = "\\n")

texto
## [1] "A inteligência artificial (IA) tem sido um dos campos mais empolgantes e inovadores da ciência da computação nas últimas décadas. Ela se concentra no desenvolvimento de sistemas e algoritmos que podem executar tarefas que normalmente requerem inteligência humana. A IA tem uma ampla gama de aplicações, desde assistentes virtuais e carros autônomos até diagnóstico médico avançado e análise de dados em larga escala.\nUma das áreas mais promissoras da IA é o aprendizado de máquina, onde os algoritmos são treinados para reconhecer padrões e fazer previsões com base em dados. Essa capacidade de aprendizado permite que os sistemas de IA melhorem continuamente com o tempo, tornando-os cada vez mais eficientes e precisos em suas tarefas. À medida que a IA se torna mais sofisticada, ela desafia as fronteiras do que é possível realizar com a tecnologia.\nNo entanto, com o poder da IA também vêm questões éticas e preocupações sobre o seu impacto na sociedade. A automação de empregos, a privacidade dos dados e o viés algorítmico são apenas algumas das questões que precisam ser abordadas à medida que a IA se torna mais difundida. É essencial que desenvolvamos políticas e regulamentações adequadas para garantir que a IA seja usada para o bem da humanidade.\nEm resumo, a inteligência artificial é uma área emocionante e em constante evolução que promete transformar a maneira como vivemos e trabalhamos. À medida que continuamos a explorar e desenvolver essa tecnologia, é fundamental equilibrar o potencial de inovação com uma consideração cuidadosa de suas implicações éticas e sociais."
  1. Conte quantas sentenças existem no texto.

Utilizarei o ponto final como separador de sentenças.

str_count(texto, pattern = "\\." )
## [1] 11
  1. Remova todos os sinais de pontuação e quebras de linha do texto.
str_replace_all(texto, "[[:punct:]\\n]", "")
## [1] "A inteligência artificial IA tem sido um dos campos mais empolgantes e inovadores da ciência da computação nas últimas décadas Ela se concentra no desenvolvimento de sistemas e algoritmos que podem executar tarefas que normalmente requerem inteligência humana A IA tem uma ampla gama de aplicações desde assistentes virtuais e carros autônomos até diagnóstico médico avançado e análise de dados em larga escalaUma das áreas mais promissoras da IA é o aprendizado de máquina onde os algoritmos são treinados para reconhecer padrões e fazer previsões com base em dados Essa capacidade de aprendizado permite que os sistemas de IA melhorem continuamente com o tempo tornandoos cada vez mais eficientes e precisos em suas tarefas À medida que a IA se torna mais sofisticada ela desafia as fronteiras do que é possível realizar com a tecnologiaNo entanto com o poder da IA também vêm questões éticas e preocupações sobre o seu impacto na sociedade A automação de empregos a privacidade dos dados e o viés algorítmico são apenas algumas das questões que precisam ser abordadas à medida que a IA se torna mais difundida É essencial que desenvolvamos políticas e regulamentações adequadas para garantir que a IA seja usada para o bem da humanidadeEm resumo a inteligência artificial é uma área emocionante e em constante evolução que promete transformar a maneira como vivemos e trabalhamos À medida que continuamos a explorar e desenvolver essa tecnologia é fundamental equilibrar o potencial de inovação com uma consideração cuidadosa de suas implicações éticas e sociais"
  1. Separe os parágrafos do texto criado (cada parágrafo ocupa um elemento de um vetor). Em seguida, remova espaços em branco do início e fim de cada objeto.
texto %>% 
  str_split("\\n")%>% 
  unlist() %>% 
  str_trim
## [1] "A inteligência artificial (IA) tem sido um dos campos mais empolgantes e inovadores da ciência da computação nas últimas décadas. Ela se concentra no desenvolvimento de sistemas e algoritmos que podem executar tarefas que normalmente requerem inteligência humana. A IA tem uma ampla gama de aplicações, desde assistentes virtuais e carros autônomos até diagnóstico médico avançado e análise de dados em larga escala."                    
## [2] "Uma das áreas mais promissoras da IA é o aprendizado de máquina, onde os algoritmos são treinados para reconhecer padrões e fazer previsões com base em dados. Essa capacidade de aprendizado permite que os sistemas de IA melhorem continuamente com o tempo, tornando-os cada vez mais eficientes e precisos em suas tarefas. À medida que a IA se torna mais sofisticada, ela desafia as fronteiras do que é possível realizar com a tecnologia."
## [3] "No entanto, com o poder da IA também vêm questões éticas e preocupações sobre o seu impacto na sociedade. A automação de empregos, a privacidade dos dados e o viés algorítmico são apenas algumas das questões que precisam ser abordadas à medida que a IA se torna mais difundida. É essencial que desenvolvamos políticas e regulamentações adequadas para garantir que a IA seja usada para o bem da humanidade."                               
## [4] "Em resumo, a inteligência artificial é uma área emocionante e em constante evolução que promete transformar a maneira como vivemos e trabalhamos. À medida que continuamos a explorar e desenvolver essa tecnologia, é fundamental equilibrar o potencial de inovação com uma consideração cuidadosa de suas implicações éticas e sociais."
  1. Encontre no texto todas as palavras que contenham mais de 3 caracteres
texto %>% 
  str_extract_all("\\b\\w{4,}\\b", simplify = TRUE)
##      [,1]           [,2]         [,3]   [,4]     [,5]   [,6]         
## [1,] "inteligência" "artificial" "sido" "campos" "mais" "empolgantes"
##      [,7]         [,8]      [,9]         [,10]     [,11]     [,12]      
## [1,] "inovadores" "ciência" "computação" "últimas" "décadas" "concentra"
##      [,13]             [,14]      [,15]        [,16]   [,17]      [,18]    
## [1,] "desenvolvimento" "sistemas" "algoritmos" "podem" "executar" "tarefas"
##      [,19]         [,20]      [,21]          [,22]    [,23]   [,24] 
## [1,] "normalmente" "requerem" "inteligência" "humana" "ampla" "gama"
##      [,25]        [,26]   [,27]         [,28]      [,29]    [,30]      
## [1,] "aplicações" "desde" "assistentes" "virtuais" "carros" "autônomos"
##      [,31]         [,32]    [,33]      [,34]     [,35]   [,36]   [,37]   
## [1,] "diagnóstico" "médico" "avançado" "análise" "dados" "larga" "escala"
##      [,38]   [,39]  [,40]         [,41]         [,42]     [,43]  [,44]       
## [1,] "áreas" "mais" "promissoras" "aprendizado" "máquina" "onde" "algoritmos"
##      [,45]       [,46]  [,47]        [,48]     [,49]   [,50]       [,51] 
## [1,] "treinados" "para" "reconhecer" "padrões" "fazer" "previsões" "base"
##      [,52]   [,53]  [,54]        [,55]         [,56]     [,57]      [,58]     
## [1,] "dados" "Essa" "capacidade" "aprendizado" "permite" "sistemas" "melhorem"
##      [,59]           [,60]   [,61]      [,62]  [,63]  [,64]        [,65]     
## [1,] "continuamente" "tempo" "tornando" "cada" "mais" "eficientes" "precisos"
##      [,66]  [,67]     [,68]    [,69]   [,70]  [,71]         [,72]    
## [1,] "suas" "tarefas" "medida" "torna" "mais" "sofisticada" "desafia"
##      [,73]        [,74]      [,75]      [,76]        [,77]     [,78]   [,79]   
## [1,] "fronteiras" "possível" "realizar" "tecnologia" "entanto" "poder" "também"
##      [,80]      [,81]    [,82]          [,83]   [,84]     [,85]      
## [1,] "questões" "éticas" "preocupações" "sobre" "impacto" "sociedade"
##      [,86]       [,87]      [,88]         [,89]   [,90]  [,91]         [,92]   
## [1,] "automação" "empregos" "privacidade" "dados" "viés" "algorítmico" "apenas"
##      [,93]     [,94]      [,95]      [,96]       [,97]    [,98]   [,99] 
## [1,] "algumas" "questões" "precisam" "abordadas" "medida" "torna" "mais"
##      [,100]      [,101]      [,102]          [,103]      [,104]           
## [1,] "difundida" "essencial" "desenvolvamos" "políticas" "regulamentações"
##      [,105]      [,106] [,107]     [,108] [,109]  [,110] [,111]       [,112]  
## [1,] "adequadas" "para" "garantir" "seja" "usada" "para" "humanidade" "resumo"
##      [,113]         [,114]       [,115] [,116]        [,117]      [,118]    
## [1,] "inteligência" "artificial" "área" "emocionante" "constante" "evolução"
##      [,119]    [,120]        [,121]    [,122] [,123]    [,124]        [,125]  
## [1,] "promete" "transformar" "maneira" "como" "vivemos" "trabalhamos" "medida"
##      [,126]        [,127]     [,128]        [,129] [,130]       [,131]       
## [1,] "continuamos" "explorar" "desenvolver" "essa" "tecnologia" "fundamental"
##      [,132]       [,133]      [,134]     [,135]         [,136]      [,137]
## [1,] "equilibrar" "potencial" "inovação" "consideração" "cuidadosa" "suas"
##      [,138]        [,139]   [,140]   
## [1,] "implicações" "éticas" "sociais"
  1. Encontre as top 6 palavras mais citadas no texto (que contenham mais de 3 caracteres)
#Extraindo todas as palavras com mais de 3 palavras e colocando em um vetor
palavras <-  str_extract_all(texto, "\\b\\w{4,}\\b") %>% 
  unlist() 

#Colocando o vetor no data frame
palavras_df <- data.frame(Palavras = str_to_lower(palavras), stringsAsFactors = F)

#Contando as palavras e mostrando as 6 primeiras que aparecem

palavras_df %>% 
  group_by(Palavras) %>% 
  summarise(Frequencia = n()) %>% 
  arrange(desc(Frequencia)) %>% 
  head()

Questão 2

Carregue o banco de dados imdb.csv que contém informações sobre filmes e responda os itens a seguir.

filme <- read_csv("imdb.csv")
## Rows: 11340 Columns: 20
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (11): id_filme, titulo, data_lancamento, generos, pais, idioma, direcao,...
## dbl  (9): ano, duracao, orcamento, receita, receita_eua, nota_imdb, num_aval...
## 
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
  1. Qual é a proporção de filmes com orçamento igual ou maior do que 10 milhões?
filmes_maiores_10mi <- filme %>% 
  filter(orcamento >= 10000000) %>% 
  summarise(Frequencia = n())

prop_orc_10mi <- filme %>% 
  summarise(frequencia = n(), proporção = round((filmes_maiores_10mi/frequencia)*100, 2))

print(prop_orc_10mi$proporção)
##   Frequencia
## 1      24.88
  1. Liste os filmes que apresentam a variável id_filme com mais de 9 caracteres?
 filme %>% 
  filter(str_count(id_filme)>9)
  1. Acrescente 1 variável CATEGÓRICA no banco de dados chamada “classificacao_nota” informando o primeiro dígito da nota_imdb.
filme %>% 
  mutate(classificacao_nota = str_sub(nota_imdb,1,1)) %>% 
  select(nota_imdb, classificacao_nota, everything())
  1. Escolha o nome de 1 ator do elenco e retorne todos os filmes que este ator atuou
filme %>% 
  filter(str_detect(elenco, "William Hurt")) %>% 
  select(elenco, titulo, generos, everything())